package com.zhan.signalling.annotation;

import static java.lang.annotation.ElementType.TYPE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;

import java.lang.annotation.Documented;
import java.lang.annotation.Inherited;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;

/**
 * columnType: 
 *  PK: Integer, String
 *  other: Integer, String, Double, Boolean
 * 至少需要两个PK
 * @author knight
 *
 */
@Documented
@Retention(RUNTIME)
@Target(TYPE)
@Inherited
public @interface TableStore {
	
	/**
	 * 表名
	 * @return
	 */
	String name();
	
	/**
	 * 数据过期时间，单位：s  -1表示不过期
	 * @return
	 */
	int timeToLive() default -2;
	
	/**
	 * 保存的最大版本数
	 * @return
	 */
	int maxVersions() default 1;
}
